import axios from 'axios'
import qs from 'qs'
// 全局的axios默认值配置
axios.defaults.timeout = 5000
// axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'
axios.defaults.baseURL = 'http://localhost:8081'

//  post传参序列化（添加请求拦截器）
axios.interceptors.request.use(function (config) {
  //  在发送请求之前做什么
  if (config.method === 'post') {
    config.data = qs.stringify(config.data)
  }
  return config
}, function (error) {
  //  对请求错误做点什么
  return Promise.reject(error)
})

//  返回状态判断（添加响应拦截器）
axios.interceptors.response.use(function (response) {
  //  对响应数据做点什么
  if (!response.data.success) {
    return Promise.reject(response)
  }
  return response
}, function (error) {
  //  对响应错误的做点什么
  return Promise.reject(error)
})

//  返回一个Promise对象（封装axios的post请求）
// export function fetch (url, params) {
//   return new Promise((resolve, reject) => {
//     axios.post(url, params)
//       .then(response => {
//         resolve(response.data)
//       }, err => {
//         reject(err)
//       })
//       .catch((error) => {
//         reject(error)
//       })
//   })
// }
//
// export default {
//   getMockData (url) {
//     return fetch(url)
//   }
// }
